System and method for maximizing mobile device power using intelligent attribute selection

ABSTRACT

A mobile application tracks a user&#39;s behavior and activities and, in particular, a geo-location. The mobile application may then produce a profile of the user&#39;s behaviors and locations. This may be used to optimize mobile device power and may also be used as a data aggregator to collect and gather user information for other purposes, such as data marketing and modeling. In an embodiment, the mobile application is continuously monitoring the mobile device&#39;s battery level and power usage and determining the most power-efficient approach for tracking the device&#39;s location. One-hundred percent location accuracy is not always required when profiling a user&#39;s behavior. It may be more critical to simply determine the general location of the device and the associated user. The application may continuously function in the background while expending the least amount of power possible.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a continuation of U.S. patent application Ser. No.15/422,223, filed Feb. 1, 2017, which claims priority to U.S.Provisional Application Ser. No. 62/290,764 filed on Feb. 3, 2016, allof which are hereby incorporated by reference in their entirety.

FIELD OF DISCLOSURE

The present disclosure is directed to systems, methods, and devices fordynamically determining and enhancing the energy usage of mobile devicesby determining a mobile device's location based on a series of sensorinput and behavior modeling. More specifically, the systems, methods,and devices are directed to a mobile application or an operating systemfeature of a mobile device that enhances, extends, and maximizes thebattery life of the mobile device by dynamically determining and usingthe most energy efficient method for determining the mobile device'slocation based on an input and modeling.

BACKGROUND

Mobile technology continues to expand and continues to become moreimportant to our everyday lives. As a result of mobile communications, auser and/or their mobile device may need to be able to accuratelyidentify the device's geo-location. Mobile devices are equipped with avariety of sensors and measuring devices and are often in communicationwith external sensors or applications, providing different ways to finda user's location. The most straightforward and accurate way to findone's location is to use a Global Positioning System (GPS) sensor in thedevice. The sensor receives signals from a series of low earth orbitgeosynchronous satellites and finds where that device is located on theglobe. Using a GPS receiver in a mobile device has a power expense thatis often very high, especially with the limited power resources of amobile device.

A second approach to positioning allows mobile devices to constantlyreport back to a system or server, all the Wi-Fi Service Set Identifiers(SSIDs) that the mobile device may encounter at a specific location. Thelocation information where those SSIDs are located may have beenpreviously acquired from GPS signals, and that information is stored ina database which identifies the Wi-Fi SSID environment at givenlocations around the globe. Using a matching algorithm the mobile devicecan match the device's location to the actual location that has beenpreviously recorded. This approach assumes that the mobile device isalso at that location because of the match in SSIDs. Wi-Fi signals allowthe mobile device to generally locate its position, and then byaccessing the historic database information, the device can make a goodestimation of where it is located based on the sensed Wi-Fi SSIDs. Wi-Fiposition location requires less power than GPS because it only has tomonitor the Wi-Fi signals it receives.

A third approach for geo-location for a mobile device, which is lessaccurate but has even lower power consumption than Wi-Fi, is cellularsignal identification/triangulation. Cellular signalidentification/triangulation allows the mobile device to identify thecell tower signals it is receiving at any given time and then query adatabase to determine a general location fitting the criteria wherethose particular towers would be located. As will be appreciated bythose skilled in the art, other methods of geo-location are available,such as the use of BlueTooth™, iBeacons, and others, each with its ownpower consumption requirements.

Each of these geo-location methods initially use coarse-grained locationalgorithms to speed up the search by reducing search space. For example,IP addresses assigned by network providers may indicate coarsegeographic regions, which may be used as a low or zero energy locationsensor. In this manner, the device has a broad geographic region tobegin its location identification.

Each of these methods have advantages and limitations. More accuracyusually requires more power, but accuracy is not always the mostimportant criteria. Conversely, lower power usage implies less accuracyand may not always be sufficient for a given application. Accordingly, aneed exists for a way to minimize sensor usage to optimize power usagewhile ensuring sufficient accuracy based on the application.

SUMMARY

In the embodiments described herein, a mobile application tracks auser's behavior and activities and, in particular, a geo-location. Themobile application may then produce a profile of the user's behaviorsand locations. This may be used to optimize mobile device power and mayalso be used as a data aggregator to collect and gather user informationfor other purposes, such as data marketing and modeling. In anembodiment, the mobile application is continuously monitoring the mobiledevice's battery level and power usage and determining the mostpower-efficient approach for tracking the device's location. One-hundredpercent location accuracy is not always required when profiling a user'sbehavior. It may be more critical to simply determine the generallocation of the device and the associated user. In one embodiment, theapplication may continuously function in the background while expendingthe least amount of power possible.

To achieve the desired power saving and location tracking, theapplication executes various algorithms utilizing internal sensor dataand determines which method or component of the mobile device should beactivated to determine the device's location. Further, the applicationmust determine how often the sensors of the device should be activatedto sufficiently determine the device's location. The application seeksto determine, within a reasonable degree of location accuracy, using theselected input components and available data points, an effectivelocation sampling-rate. Utilizing an estimate of location may be basedon inputs including the quality of the input component used (e.g.,Wi-Fi, GPS, tower signal identification/triangulation, BlueTooth,iBeacons, or any electromagnetic signal environment, that may compriseWi-Fi, Bluetooth, iBeacons, etc.), the rate of displacement of thedevice since the last measurement, external sensor data, on boardapplications, previous location measurements, previous behavior, andothers.

An optimal location sampling-rate may be determined by balancing apredicted rate of location-sampling against a decaying rate of locationquality over time. The decay rate of the location quality is arecognized drop in the quality of the calculation of the device'slocation from when the location was previously determined and may bebased on inputs, including confidence scores for the best guess of thedevice's location, the rate of displacement (speed) of the devicedetermined using the device's sensors or incoming location data, andothers. In an embodiment, a Kalman type model was used. The modelcomprises a series of internal states (i.e., location and accuracy) andobservations (i.e., behavior/location measurements), and a basic modelfor how observations translate or apply to the internal states.

The application can extrapolate information about a user's activitiesbased on the information provided, and create a model based on thatbehavior. For example, the application can determine that the mobiledevice is traveling on a particular type of vehicle, such as a train,when the device is moving at a particular speed and the location of thedevice. The estimate of the user location, the decay rate, the user'sactivities and behaviors, and the optimal sampling rate may be used asinputs, among others, to determine which mobile device component toactivate to determine the location of the mobile device at any giventime.

By determining a user's likely modality and the estimated speed based onbehavior modeling, the system or device can determine the best methodfor determining the device's location and how often that informationneeds to be updated to provide an accurate location and an efficient useof power. For example, a mobile device that is in a vehicle traveling 35miles per hour through a populated area needs to update more frequentlythan a mobile device being used by a user that is walking at 4 miles perhour through the same area. While both may be able to update using Wi-Fisignals, which provides sufficient accuracy for that application, thedevice in the vehicle will need to be updated much more frequentlybecause changes between each sample occur much more quickly. In betweensamples, as the device's location accuracy decays with each sample, atsome point, it will exceed a predetermined threshold value whichrequires the device to expend power to gain accuracy. The threshold maybe triggered based on how accurate the device's internal estimate isversus where it actually is located.

In one embodiment, a method for reducing power consumption on a mobiledevice comprises obtaining, by a mobile device, location informationfrom a positioning module of the mobile device that identifies a firstposition of the mobile device; obtaining, by the mobile device, sensordata from a sensor in the mobile device; modeling, by the mobile device,a behavior based on the obtained sensor data; computing, by the mobiledevice, a rate of decay of the first position; selecting, by the mobiledevice, a first threshold level, based on the a desired level ofaccuracy (defined by the application), for requesting a location updatefrom the positioning module of the mobile device; estimating, by themobile device, a total decay from the first position; upon estimatingthat the total decay from the first position exceeds the first thresholdlevel, obtaining, by the mobile device, a second position from thepositioning module in the mobile device, wherein the positioning modulehas a plurality of location modes for obtaining location information andeach location mode uses a different level of power consumption to obtainthe location information; and selecting, by the mobile device, alocation mode with a lowest level of power consumption to obtain thesecond position with sufficient accuracy.

In another embodiment, a method for reducing power consumption on amobile device comprises receiving, at a modeling server, first locationinformation from a mobile device with a positioning module and a sensor;receiving, by the modeling server, sensor data from a sensor of themobile device; modeling, by the modeling server, a behavior based on thereceived sensor data; computing, by the modeling server, a rate oflocation decay of the first location information; selecting, by anapplication on the modeling server, a first threshold level based on themodeling for requesting a location update from the positioning module ofthe mobile device; estimating, by the modeling server, a total locationdecay from the first location; upon estimating that the total locationdecay from the first location exceeds the first threshold level,requesting, by the modeling server, second location information from thepositioning module of the mobile device, wherein the request for secondlocation information includes an instruction to the mobile device to useone of a plurality of location modes for obtaining the second locationinformation; and wherein each location mode requires a different levelof power consumption to obtain the second location information.

In another embodiment, a mobile device comprises a memory; and aprocessor used for reducing power consumption on the mobile deviceconfigured to obtain location information from a positioning module ofthe mobile device that identifies a first position of the mobile device;obtain sensor data from a sensor in the mobile device; model a behaviorbased on the obtained sensor data; compute a rate of decay of the firstposition; select a first threshold level, for requesting a locationupdate from the positioning module of the mobile device; estimate atotal decay from the first position; upon estimating that the totaldecay from the first position exceeds the first threshold level, obtaina second position from the positioning module in the mobile device,wherein the positioning module has a plurality of location modes forobtaining location information and each location mode uses a differentlevel of power consumption to obtain the location information; andselect a location mode with a lowest level of power consumption toobtain the second position.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings illustrate example embodiments of the presentdisclosure. Such drawings are not to be construed as necessarilylimiting the disclosure. Like numbers and/or similar numbering schemecan refer to like and/or similar elements throughout.

FIG. 1 shows a schematic view of an example embodiment of a computernetwork diagram according to the present disclosure.

FIG. 2 shows a schematic view of an example embodiment of a computeraccording to the present disclosure.

FIG. 3 depicts a flow diagram illustrating the steps of the describedmethod and system in accordance with an embodiment of the presentdisclosure.

FIG. 4 depicts a general computer architecture on which the presentteaching can be implemented.

DETAILED DESCRIPTION

The present disclosure is now described more fully with reference to theaccompanying drawings, in which example embodiments of the presentdisclosure are shown. The present disclosure may, however, be embodiedin many different forms and should not be construed as necessarily beinglimited to the example embodiments disclosed herein. Rather, theseexample embodiments are provided so that the present disclosure isthorough and complete, and fully conveys the concepts of the presentdisclosure to those skilled in the relevant art. In addition, featuresdescribed with respect to certain example embodiments may be combined inand/or with various other example embodiments. Different aspects and/orelements of example embodiments, as disclosed herein, may be combined ina similar manner. Further, some example embodiments, whetherindividually and/or collectively, may be components of a larger system,wherein other procedures may take precedence over and/or otherwisemodify their application. Additionally, a number of steps may berequired before, after, and/or concurrently with example embodiments, asdisclosed herein. Note that any and/or all methods and/or processes, atleast as disclosed herein, can be at least partially performed via atleast one entity in any manner.

FIG. 1 is an architecture of an exemplary system 100. System 100includes user devices 110 a-110 n, a network 120, a modeling server 130,a Wi-Fi SSID database 140, a cell tower database 150, cell towers 160,wireless access points 170, such as Wi-Fi, and GPS satellites 180.Network 120 can be a single network or a combination of differentnetworks. For example, a network can be a local area network (LAN), awide area network (WAN), a public network, a private network, aproprietary network, a Public Telephone Switched Network (PSTN), theInternet, a wireless network, a virtual network, or any combinationthereof. A network may also include various network access points, e.g.,wired or wireless access points such as base stations or Internetexchange points 160, through which a user 110 may connect to the networkin order to receive location information via the network.

Users' devices 110 are connected to the network and may be of differenttypes, such as a handheld mobile device 110-a or a device 110 in a motorvehicle 110-b. Modeling server 130, which may be implemented in hardwareor software, may comprise models analyzing user's behavior and historyas well as modeling parameters. For example, in an embodiment, modelingserver 130 may store a user's or a sample of user's historical dataindicating user behaviors or activities, such as when a user is walking,when a user is driving, when a user is riding on a train or a bus. Themodels in modeling server 130 may be accessed by a user's mobile device110 and/or may be pushed to a user's device 110 to calculate mobilityand behavior, when the application or operating system requires.Alternatively, the models may be stored on the user device, and themodel parameters may be stored on the sever 130.

Wi-Fi SSID Database 140 is coupled to the network 120 and stores Wi-FiSSID data. A user device when estimating location based on Wi-Fi signalmay use the SSID's viewable to the user's device 110 to approximatelocation by accessing the database 140 to coordinate location based onthe received Wi-Fi SSID signals.

Cell tower database 150 is coupled to network 120 and comprises lookuptables for cell tower locations. When a user's device 110 is using towertriangulation for location, it may process the incoming cell towersignals and triangulate its position based on delay and signal strength.Alternatively, the device 110 may access database 150 and use a look uptable algorithm to determine its possible location based on the celltowers signals it receives.

Cell tower 160 may be coupled to a wireless base station coupled to acellular network or to another network. Cell tower 160 is coupled tonetwork 120 and allows user device 110 to communicate with network 120when required. Cell tower 160 may also convey its location informationdirectly to user device 110 to aid with signalidentification/triangulation. Wireless access points 170 may be awireless router, modem, short range transceiver, or some other wirelessaccess point. Wireless access point 170 may provide a Wi-Fi signal,Bluetooth signal or iBeacon signal or some other form of short rangecommunications interface signal. Wireless access point 170 maycommunicate location information and its SSID to user device 110 whichmay be used to calculate a user's position. Satellite 180 is a GPSsatellite and transmits global positioning information to user device110. It is also noted that a network IP address received by the deviceover network 120 may be used as a low power coarse location identifier.

In the exemplary system 100, a user with device 110 may initially turnon a device 110 inside a building and receive a set of Wi-Fi signalsfrom wireless access point 170. The Wi-Fi SSID's for the set of wirelessaccess points 170 may be conveyed to database 140 via a Wi-Fi orcellular signal and are compared to a look up table to determine wherethat specific set of SSID's exists. Based on that information, theuser's initial location may be estimated by the mobile device or thesystem. Next, as the user leaves the building and enters an automobile,sensors within the device 110 may sense a change in motion,acceleration, or magnetic field, and send a request to modeling server130 to predict where the user's device 110 is located and what mode ofmotion is involved. Modeling sever 130 may interpret the sensor data asindicating that the user is travelling in a car and convey thatinformation back to the user's device 110. Additionally and/oralternatively, the modeling data is pushed to the user's device 110based on the sensor data and the user device 110 determines the user'sprobabilistic behavior based on the modeling. Initially, the system willrely on the user's last known location data as a starting point andattempt to predict any change based on the modeling. As the quality ofthat modeling estimation data decays, the user device 110 will need, atsome point in time, to update the location data using the same ordifferent geo-location devices and methods.

For example, if the modeling server 130 determines that the user is in acar moving at a high rate of speed, the modeling server 130 can estimatehow fast the accuracy of the location data and/or the user activity datawill decay to a point of obsolescence based on the modeled behavior. Atwhich point, the last location information is no longer considered agood indicator of the user's or device's 110 location. For example, adevice 110 associated with a user who is determined to be walking,according to one or more activity models, may need to only updatelocation data every, e.g., 30 seconds, because the potential for errorevery second is small due to the low rate of change in location.Contrastingly, a user device 110 associated with a user who isdetermined to be moving in a car or train at 60 miles per hour (MPH)according to one or more activity models, will have a comparativelylarger change in location every second and the quality of the estimatedlocation will decay comparatively faster than walking at 3 MPH.

Once the estimated location data decays to an unacceptable level basedon the modeling estimation, a new location measurement must beperformed. The new measurement may be based on the source of dataavailable, i.e., GPS, Wi-Fi, Bluetooth, iBeacon, or cellular, theaccuracy required and the power cost associated with each source and thenecessary accuracy. For example, in an embodiment, if the modelprobability indicates that the user is walking with the user device 110,it may be acceptable to use cellular tower information which uses lowpower consumption. However, cellular tower information may not always beavailable, e.g., walking in the woods or in a remote location,accordingly, the system must then determine the next most “costeffective” means to obtain the accuracy required. If the original powerlocation solution is available, the system will update the locationbased on that solution. If not, the location accuracy information basedon the last update will continue to decay based on the modeled behavioruntil it reaches a point, e.g., the next threshold, where the systemdetermines that it is willing to expend a little more power to obtainnew location information. At this next threshold, the system will againattempt to obtain location information from the location modality thatrequires the lowest power, e.g., Wi-Fi or GPS. Again, if the preferredsignal is available, an update will be provided. If the preferred signalis not available, the location accuracy may continue to decay until thenext threshold and its associated location information source. It willbe understood, that at some point, the system may be required to use aGPS signal or some other higher power location mode even if suchaccuracy is not necessarily required based on the predicted model. Itwill be further understood, that during the entire process, the systemwill be continuously monitoring the available sensor data to determineif the modality model needs to be updated or changed. For example, ifthe user model probability suddenly indicates that the user is no longerdriving, the system thresholds and acceptable power consumption forlocation information will need to be revised.

In an embodiment, each location sensor is assigned a thresholdproportionate to the inverse of the accuracy of location measurementsdelivered by the sensor:threshold(sensor)∝constant*1/accuracyAs will be understood, a location sensor with lower accuracy thatrequires a higher energy cost than other available sensors will not bedesigned into a device. It will not “survive” the initial device designas another more accurate power efficient device will supplant theinferior sensor and it will not be implemented. Accordingly, the orderof thresholds (from lowest to highest) will be monotonically increasingin terms of energy cost, and monotonically decreasing in terms ofaccuracy, i.e., the lowest threshold in terms of accuracy decay willrely on the sensor with the lowest energy consumption and the lowestaccuracy. When a threshold is triggered, a specific sensor that fits therequired criteria should be used, if available.

It will be understood, that the sensor data may be continuouslymonitored to provide accurate modeling data. It will further beunderstood, that data from a plurality of sensors may be filteredtogether to provide the most accurate information, while at the sametime provide for the fusion and filtering of individual sensor datapoints that may be incorrect or of low accuracy.

It is further understood, that the modeling used to predict the user'sbehavior may be based on activity recognition. Activity recognitionrecognizes the actions and goals of one or more users from a series ofobservations of the user's actions and the environmental conditions overa period of time. The information may be provided by a series ofsensors, such as those associated with a user's mobile device 110.Sensor-based activity recognition may integrate the mobile's sensor dataand data mining and machine learning techniques to model the humanactivities. Mobile user device 110 provides sensor data to enablephysical activity recognition In an example, known sensor data may besegmented into a series of smaller portions to identify characteristicsassociated with a given user behavior. Once these segments and behaviorshave been identified, a timeline of segments of behaviors may be createdthat is parallel to the stream of sensor data. Instead of a continuousdata stream, however, the sensor signals are discreet and each isassociated with a known behavior. In this manner, a timeline ofbehaviors, i.e., walking, sitting, jumping, running, can be quantifiedinto a series of specific data points. Once these data streams have beenpreviously quantified they may be used as a baseline against actual userbehaviors to not only identify a specific behavior, but to eliminate abad data point which may point to a completely different behavior. Forexample, if 90% of the behavior data points indicate that a user isrunning and 10% intermittently indicate that the behavior is drivingwhile overall estimated or measured speed does not change, it's muchmore likely that the user is running and not driving. Further, bycombining that information with other known data, such as location,erroneous behaviors may be eliminated from the model.

In an embodiment, the system or application uses multiple differentquality thresholds based on the potential rate of decay of the data andthe modeling behavior. For example, if the modeling server 130determines that the user is walking, the modeling server 130 may thenestimate that the acceptable decay before taking another sample is 100feet. If the measurement accuracy decays at 5 feet/second, the systemdetermines that within 20 seconds, the user's location may have changedby some interval greater or less than 100 feet and then the modelingserver 130 requires the device 110 to obtain another locationmeasurement using, for example, tower triangulation/identification,which requires less power consumption than GPS or Wi-Fi. The moreenergy-efficient use of tower signal identification/triangulation may beused because the rate of change in location during the activity ofwalking is small enough, and accuracy is not as critical as it might befor other activities, such as driving. If a cellular signal isavailable, the device 110 will use cellular signal fortriangulation/lookup identification. If no cellular signal is available,the location data may continue to decay and will reach the secondthreshold, which may require Wi-Fi SSID location identification at 150feet decay. If a Wi-Fi measurement is available, it may use thatmeasurement. If not, then the signal will decay until the nextthreshold, e.g., at 200 feet, which will then resort to a GPS signalwhich requires the most power to be expended. It is to be understoodthat the thresholds may be set differently based on the modeling and theactivity actually being performed. For example, a user that is walkingmay not need as much accuracy as a device traveling in a car at 60 MPHon a highway. Based on this difference in accuracy requirements, thetradeoff on power consumption can be maximized and optimized based onmodeling data rather than a rigid set of instructions. The system may bewilling to sacrifice accuracy for power when the situation warrants sucha tradeoff, but when accuracy is required, then it may be willing toexpend power resources more frequently.

It is to be understood, that based on the modeling and estimated decayrate, location updates need not always proceed from lowest powerrequirement to highest. For example, if a device is traveling at such ahigh speed, the modeled decay between intervals can be so great that themost accurate location may be needed, and the lower power options maynot be viable because they do not provide the accuracy required for thesituation.

In an embodiment, the models from model server 130 are located on thedevice 110 and the model parameters are stored on sever 130. The modelparameters can be pushed to the device 110 when server 130 is queried bythe application or may be resident on the user device 110. The modelparameters may be updated, e.g., on a periodic basis, based onhistorical user information. As more historical data becomes available,the more information can be used to train the model. In an embodiment,model execution may be performed on the device 110 even when the device110 does not have a connection to network 120. In an embodiment, theinterval between automatic refreshes can be based on the behavioralinformation that is determined using the model.

In an embodiment, the rate of decay can be estimated based on a knownspeed for a particular model or on actual calculated speed. Speed may beobtained directly from a sensor, such as a received GPS signal, or itmay be obtained by filtering a set of sensor data from a variety ofsources. In an embodiment, a Kalman filter can filter the set of sensordata, although other filter techniques can be used. Kalman filteringuses a series of measurements observed over time, containing statisticalnoise and other inaccuracies, and produces estimates of unknownvariables that tend to be more precise than those based on a singlemeasurement alone. In an embodiment, the Kalman model comprises a seriesof internal states (i.e., location and accuracy) and observations (i.e.,behavior/location measurements), and a model for how observationstranslate or apply to the internal states.

The Kalman filter works in a two-step process. In the prediction step,the Kalman filter produces estimates of the current state variables,along with their uncertainties. Once the outcome of the next measurement(necessarily corrupted with some amount of error, including randomnoise) is observed, these estimates are updated using a weightedaverage, with more weight being given to estimates with highercertainty. The algorithm is recursive. It can run in real time, usingonly the present input measurements and the previously calculated stateand its uncertainty matrix; no additional past information is required.

In addition to or as an alternative to determining speed estimations, insome embodiments, the system may determine a physical modality by whichthe device is moving in order to identify the rate of decay. This isbased on modeling the device's behavior and determining the probabilityof one modality versus another and modeling based on the modality withthe greatest probability. In an embodiment, modeling may be based oninertial measurement unit data obtained from the mobile device. Inertialmeasurement units such as accelerometers may be used to predict behavioronce a sufficient amount of data is collected and analyzed. Utilizingmachine learning and behavioral analysis such as activity recognition toanalyze the inertial measurement unit data, the system may distinguish,based on a history of signals, the model for the specific behavioralpatterns like walking, running, and driving, from other types ofbehavior.

Based on the inertial measurement unit data alone the system may have anindication of how the user's device is moving (e.g., speed, changinglocation, pressure). This data can be used to distinguish betweendifferent actions, such as riding in a vehicle, riding a bicycle,walking, sitting, standing, and other modalities as long as the type ofbehavior or activity that the user is doing is physically different fromother types. For example, it is possible to distinguish between drivinga car, driving a bus, riding in a subway, riding a bicycle, walking,running, or sitting, using a series of sensor data. It may not bepossible, however, to distinguish between riding in a taxi and driving acar.

Accordingly, based on both the model as well as the physical location,an accurate estimate of how fast the data decays over time can beestimated. That estimation may be used to set thresholds on that decayand determine how much power the system is willing to expend to get anew location update reading. As a result, the system uses the modeling,the thresholds, and the estimations to provide the user's device with away to fuse location and movement information into the best estimate ofwhere the device is located at any given time while conserving power.The system or application on the user's device can then determine whichlocation information and device sensor needs to be used and allows thedevice, in an extremely efficient and low power fashion to obtain itslocation, as compared to traditional approaches that rely on GPS signalsall the time.

FIG. 2 shows a schematic view of an example embodiment of a mobilecomputing devise according to the present disclosure. A mobile computingdevice 200 comprises a processor 202, a memory 204 operably coupled tothe processor 202, a network communication unit 206 operably coupled tothe processor 202, a camera 208 operably coupled to the processor 202, adisplay 210 operably coupled to the processor 202, a speaker 212operably coupled to the processor 202, a geo-locating unit 214 operablycoupled to the processor 202, a graphics unit 216 operably coupled tothe processor 202, a microphone 218 operably coupled to the processor202, a transceiver 222 operably coupled to the processor 202, and asensor 224 operably coupled to the processor 202. The mobile computingdevice 200 comprises a power source 220, which powers the processor 202,the memory 204, the network communication unit 206, the camera 208, thedisplay 210, the speaker 212, the geo-locating unit 214, the graphicsunit 216, the microphone 218, the transceiver 222 and the sensors 224.In an embodiment, the mobile computing device 200 may include morecomponents or less components and at least one of the networkcommunication unit 206, the camera 208, the display 210, the speaker212, the geo-locating unit 214, the graphics unit 216, the microphone218, the transceiver 222 and the sensors 224.

Mobile computing device 200 may be a mobile phone, a laptop computer ora tablet, or any other mobile computing device. The processor 202comprises a hardware processor, such as a multicore processor. Forexample, the processor 202 comprises a central processing unit (CPU).

The memory 204 comprises a computer-readable storage medium, which canbe non-transitory. The medium stores a plurality of computer-readableinstructions, such as a software application, for execution via theprocessor 202. The instructions instruct the processor 202 to facilitateperformance of a method for video-based commerce, as described herein.Some examples of the memory 204 comprise a volatile memory unit, such asrandom access memory (RAM), or a non-volatile memory unit, such as aread only memory (ROM). For example, the memory 204 comprises flashmemory. The memory 204 is in wired communication with the processor 202.Also, for example, the memory 202 stores a plurality ofcomputer-readable instructions, such as a plurality of instruction sets,for operating at least one of the network communication unit 206, thecamera 208, the display 210, the speaker 212, the geo-locating unit 214,the graphics unit 216, and the microphone 218.

The network communication unit 206 comprises a network interfacecontroller for computer network communication, whether wired orwireless, direct or indirect. For example, the network communicationunit 206 comprises hardware for computer networking communication basedon at least one standard selected from a set of Institute of Electricaland Electronics Engineers (IEEE) 802 standards, such as an IEEE 802.11standard. For instance, the network communication unit 206 comprises awireless network card operative according to a IEEE 802.11(g) standard.The network communication unit 206 is in wired communication with theprocessor 202.

The camera 208 comprises a lens for image capturing, such as a photo ora video. The speaker 212 comprises a loudspeaker, such as anelectroacoustic transducer providing sound responsive to an electricalaudio signal input.

The display 210 comprises an area for displaying visual and/or tactileinformation. The display 210 comprises at least one of an electronicvisual display, a flat panel display, a liquid crystal display (LCD),and a volumetric display. For example, the display 210 comprises atouch-enabled computer monitor. The display 210 is in wiredcommunication with the processor 202. The display 210 can also beremotely coupled to the processor 202, such as wirelessly.

The geo-locating unit 214 may comprises a GPS receiver, a Wi-Fireceiver, and a cellular receiver. It is understood that the Wi-Fi andGSM or cellular receiver used for geo-location may be the samehardware/transceiver components used for network communication. Theyneed not be separate devices used only for geo-location purposes. Thegeo-locating unit 214 is in communication with the processor 202. Notethat other types of geo-location are possible, such as via cell sitesignal identification/triangulation. The geo-locating unit 214 can alsobe remotely coupled to the processor 202, such as wirelessly. In nembodiment, the geo-locating unit comprises a GPS receiver, a shortrange communications receiver, and a cellular or wireless telephonyreceiver. The frequency ranges of the geo locating unit 214 may vary andare dependent on the various technologies, i.e., TDMA, CDMA, GSM, 3G,4G, LTE, GPRS and others

The graphics unit 216 comprises a graphics processing unit (GPU) forimage processing. The graphics unit 216 is a graphics dedicated unit,but in other embodiments, the processor 202 is integrated with thegraphics unit 216. For example, the graphics unit 216 comprises a videocard. The graphics unit 216 is in wired communication with theprocessing unit 102.

The transceiver 222 comprises a transmitter and a receiver. It may be asingle unit with a multiplexer or may be separate units. It may compriselow noise amplifiers, RF/IF filters, and other components. It may becapable of receiving any signals in the electromagnetic spectrum,including Wi-Fi signals, Bluetooth, RF signals, IF signals and any otherform of wireless communication signals.

The sensors 224 comprises a single sensor or a series of sensors. It mayinclude internal sensors but may also include a remote sensor interfacethat receives sensor data from a remote sensor that is then supplied tothe mobile device. Potential sensors include but are not limited toinertial measurement units, accelerometers, barometers, temperaturesensor, light sensors, altimeters, and magnetic sensors.

The power source 220 powers the mobile computing device 200. The powersource 220 comprises at least one of an onboard rechargeable battery,such as a lithium-ion battery. Mobile computing device 200 can beoperably coupled to at least one input device, such as a keyboard orother suitable input devices. Mobile computing device 200 can also becoupled to at least one output device, such as a printer, a projector,or other suitable output devices. In an embodiment, mobile computingdevice 200 is the user's device 110. As will be understood power source220 of mobile computing device 200 stores limited power for theoperation of the mobile computing device 200. In an embodiment of thepresent disclosure, the amount of power expended by power source 220 forobtaining location information is reduced and the usable time of powersource 220 before requiring recharging is maximized using the describedapplication.

FIG. 3 depicts a flow diagram of the present embodiment of system 300.Prior to step 302, an application, client, or operating system isinstalled on a mobile deice 110. The application or client may beobtained from a third party app store such as Google® Play of AppleiTunes® or may be downloaded to the mobile device directly from a website. Alternatively, the application may come pre-loaded on mobiledevice 110. The application on mobile device 110 may be always activewhenever location information is requested, or it may be called in thebackground whenever another application requests location data. At step302, the device may use the application for primary navigation or anapplication that requires location data may request the device's currentlocation. Assuming the device is stationary, the system may use the lastlocation data available or may request a new update based on the signalsavailable. If the device is indoors, GPS may not be available. Signalidentification/triangulation of cellular signals or Wi-Fi SSID may beavailable and are usually sufficiently accurate.

This last update may be sufficient as long as there is no change to thedevice indicating a change in position, method of mobility, or location.At step 304, the system combines the last location measurement with adevice internal estimate and accuracy prediction. The internal accuracymay be obtained from sensor data located in the device as well as otherinputs, such as other application data. For example, the device'sinertial measurement unit or accelerometer may indicate a drastic changein inertial movement when the device first enters a car, train, or busthat starts to move. Additional sensors, such as a magnetometer mayindicate that the device is within a large metallic object, such as atrain. Frequent stops and starts may indicate the type of vehicle, suchas a bus that stops often as opposed to a car which may stop lessfrequently. Additionally and/or alternatively, other applicationsrunning on the mobile device may provide an indication as to the user'sactivities. For example, a user's calendar indicating that a user isgoing for a run or a boat trip may be used to aid in identifying theindicated change in models. Similarly, if the device invokes a runningor biking application, the system may use that information to aid indetermining the change to the device.

Once a change is indicated, the device using the modeling based on thesensor data at step 306 updates the internal status given the elapsedtime since the last location update and the model parameters anddetermines if the modeled parameters are above a threshold generatedbased on the model. The model, may be based on the specific user'sbehavior as well as other analyzed user's behavior. The model may beused to obtain a probability about what type of activity the user andthe device are engaged in. Once the activity is identified with a highdegree of probability, the data is input to the model to confirm themodeled activity. Based on the modeling, the model parameters, such asspeed may be used to generate the parameters for location updates andpower management.

In an embodiment, signals forming the actual behavior are inputtedrecursively into various models to determine a probability that thebehavior is likely to be one of the expected behaviors. For example, ifthe model parameters are inputted into the model and modeled againstvarious behaviors (e.g., being in a car, running down the street,sitting, riding or driving a bus, riding a bicycle), the system willestimate a probability distribution over all of these scenarios aspossible types of behaviors. These model parameters/data may be used totrain and improve the system and teach it how to differentiate themodeled assumptions based on which model is closest, because the closestmodel will have a higher probability in the posterior distribution.

At step 308 the system determines if the accuracy estimate is above thepredetermined threshold. If it is above the thresholds, them at step310, the device obtains a new location measurement using the method withthe lowest power consumption acceptable for that associated threshold,if available.

If the internal accuracy at step 308 is not above the threshold, then atstep 312, the device and/or system obtains sensor behavior pertaining tothe modeled behavior. At step 314, the modeled behavior is applied toinfer the mode of locomotion and the speed observations and at step 316,based on the inferred mode, the rate of decay, the thresholds and otherparameters are updated. In an embodiment, the refresh rates, thresholdsand modeled decay rates are proportional to the modeled rate of speed.For example, if the modeled behavior indicates a high rate of speed,then the decay rates will be fast, the thresholds will be low, and therefresh rates will be high. Contrastingly, if the model indicates slowspeeds, such as walking, the decay rates will be slow, the thresholdswill be high, and the refresh rate will be low. As will be understood inthe art, these factors directly impact which mode of geo-location toemploy and how much power to expend. While the lowest power cost mode isalways desirable, based on the changing criteria it is not alwayspossible, even if available.

It is to be understood that decay rate refers to the rate at which thelast location data accuracy decays over time. The interval is simplywhen the decay is computed. The decay itself is continuous. For example,if a GPS measurement is taken every second using GPS, which has about a6 meter accuracy, that measurement will change as a function of themodeled speed every second based on the modeled behavior. Accordingly,for each second that an update is not received, the user and the user'sdevice 110 may have moved proportionately based on the user's speed. Ifit is estimated that the user is moving very fast, the rate of decay isvery high, and the last estimate accuracy decays by several hundredmeters in a matter of second.

Decay threshold is the level of error that the system can tolerate basedon the modeled behavior before requesting a new update. There aredifferent thresholds for each geo-location mode. For example, the systemmay be willing to expend a limited amount of power by using cell toweridentification/triangulation if the error reaches +/−100 meters and morepower if the system decay is greater. For example, the threshold forutilizing Wi-Fi SSID may be 200 meters and the threshold for GPS may be300 meters. These threshold values may be predetermined for eachgeo-location mode and may vary based on the modeled behavior. It is tobe understood that these errors and threshold values are forillustrative purposes only and other values and thresholds and rates ofdecay can be used and will vary based on the modeling, mode of motionand environment. In an embodiment, as each of these thresholds isreached, the system will attempt to obtain a new geo-locationmeasurement by the designated means if available.

The refresh rate indicates a period of time when a measurement may betaken based on time, regardless of decay. In an embodiment, when therefresh rate indicates that it is time for an update regardless of thethreshold value, the mobile device 110 will attempt to expend the leastamount of energy by using the location mode with the lowest energy costacceptable for the modeled behavior if the signals are available.

Returning to FIG. 3, once the rate of decay, the thresholds, and anyother required parameters are updated, the device or system returns tostep 306 to update the internal states based on the elapsed time and newmodeled parameters. It should be noted, that at step 310, if locationsignals are not available, such as in the case of no cell tower coveragefor example, then at step 304 the system will continue to allow themeasurement accuracy to decay until the next threshold is reached. If atstep 308, the threshold for the mode with the next highest powerconsumption is reached, and the signal is available, then at step 310the newest location update will be obtained. As will be understood, byone skilled in the art, ultimately, the system may rely on the locationsignal with the highest power consumption because it is the only signalavailable or because the high rate of modeled speed indicates that suchan expenditure of energy is required.

FIG. 4 depicts a general computer architecture, such as that foundwithin a server or mobile device on which the present teaching can beimplemented and has a functional block diagram illustration of ahardware platform which includes user interface elements. The computermay be a general purpose computer or a special purpose computer. Thiscomputer 400 can be used to implement any components of the system andmethod for maximizing mobile device power using intelligent geo-locationselection as described herein. For example, the modeling server 130 thatmodels the behavior or the mobile device 110 or the Wi-Fi SSID database140 that houses the look up tables for Wi-Fi location, can all beimplemented on a computer such as computer 400, via its hardware,software program, firmware, or a combination thereof. Although only onesuch computer is shown, for convenience, the computer functions relatingto the maximization of mobile device power may be implemented in adistributed fashion on a number of similar platforms, to distribute theprocessing load.

The computer 400, for example, includes COM ports 450 connected to andfrom a network connected thereto to facilitate data communications. Thecomputer 400 also includes a central processing unit (CPU) 420, in theform of one or more processors, for executing program instructions. Theexemplary computer platform includes an internal communication bus 410,program storage and data storage of different forms, e.g., disk 470,read only memory (ROM) 430, or random access memory (RAM) 440, forvarious data files to be processed and/or communicated by the computer,as well as possibly program instructions to be executed by the CPU. Thecomputer 400 also includes an I/O component 460, supporting input/outputflows between the computer and other components therein such as userinterface elements 480. The computer 400 may also receive programmingand data via network communications.

Hence, aspects of maximizing power on a mobile device, as outlinedabove, may be embodied in programming. Program aspects of the technologymay be thought of as “products” or “articles of manufacture” typicallyin the form of executable code and/or associated data that is carried onor embodied in a type of machine readable medium. Tangiblenon-transitory “storage” type media include any or all of the memory orother storage for the computers, processors or the like, or associatedmodules thereof, such as various semiconductor memories, tape drives,disk drives and the like, which may provide storage at any time for thesoftware programming.

All or portions of the software may at times be communicated through anetwork such as the Internet or various other telecommunicationnetworks. Such communications, for example, may enable loading of thesoftware from one computer or processor into another, for example, froma management server or host computer of the search engine operator orother explanation generation service provider into the hardwareplatform(s) of a computing environment or other system implementing acomputing environment or similar functionalities in connection withgenerating explanations based on user inquiries. Thus, another type ofmedia that may bear the software elements includes optical, electricaland electromagnetic waves, such as used across physical interfacesbetween local devices, through wired and optical landline networks andover various air-links. The physical elements that carry such waves,such as wired or wireless links, optical links or the like, also may beconsidered as media bearing the software. As used herein, unlessrestricted to tangible “storage” media, terms such as computer ormachine “readable medium” refer to any medium that participates inproviding instructions to a processor for execution.

Hence, a machine readable medium may take many forms, including but notlimited to, a tangible storage medium, a carrier wave medium or physicaltransmission medium. Non-volatile storage media include, for example,optical or magnetic disks, such as any of the storage devices in anycomputer(s) or the like, which may be used to implement the system orany of its components as shown in the drawings. Volatile storage mediainclude dynamic memory, such as a main memory of such a computerplatform. Tangible transmission media include coaxial cables; copperwire and fiber optics, including the wires that form a bus within acomputer system. Carrier-wave transmission media can take the form ofelectric or electromagnetic signals, or acoustic or light waves such asthose generated during radio frequency (RF) and infrared (IR) datacommunications. Common forms of computer-readable media thereforeinclude for example: a floppy disk, a flexible disk, hard disk, magnetictape, any other magnetic medium, a CD-ROM, DVD or DVD-ROM, any otheroptical medium, punch cards paper tape, any other physical storagemedium with patterns of holes, a RAM, a PROM and EPROM, a FLASH-EPROM,any other memory chip or cartridge, a carrier wave transporting data orinstructions, cables or links transporting such a carrier wave, or anyother medium from which a computer can read programming code and/ordata. Many of these forms of computer readable media may be involved incarrying one or more sequences of one or more instructions to aprocessor for execution.

In an embodiment, the described systems and methods may be implementedin the device operating system and applied to all geo-locationinformation. In an embodiment, the described systems and methods areimplemented using a preloaded application. In an embodiment, the systemsand methods described herein are implemented using middleware betweenthe operating system and an application. In an embodiment, the systemsand methods are implemented in a cloud-based environment, where thedevice and application are in constant communication with a cloud-basedserver. In such an embodiment, the system's requests for measurementsare all sent to the device and all measurements are sent back to thecloud. In an embodiment, the described methods may be implemented in astand alone device without internet connectivity.

As will be appreciated by one skilled in the art, aspects of thisdisclosure can be embodied as a system, method or computer programproduct. Accordingly, aspects of the present disclosure can take theform of an entirely hardware embodiment, an entirely software embodiment(including firmware, resident software, micro-code, etc.) or asembodiments combining software and hardware aspects that can allgenerally be referred to herein as a “circuit,” “module” or “system.”Furthermore, aspects of the disclosure can take the form of a computerprogram product embodied in one or more computer readable medium(s)having computer readable program code embodied thereon.

Any combination of one or more computer readable medium(s) can beutilized. The computer readable medium can be a computer readable signalmedium or a computer readable storage medium. A computer readablestorage medium can be, for example, but not limited to, an electronic,magnetic, optical, electromagnetic, infrared, or semiconductor system,apparatus, or device, or any suitable combination of the foregoing. Morespecific example (a non-exhaustive list) of the computer readablestorage medium would include the following: an electrical connectionhaving one or more wires, a portable computer diskette, a hard disk, arandom access memory (RAM), a read-only memory (ROM), an erasableprogrammable read-only memory (EPROM or flash memory), an optical fiber,a portable compact disc read-only memory (CD-ROM), an optical storagedevice, a magnetic storage device, or any suitable combination of theforegoing. In the context of this document, a computer readable storagemedium can be any tangible medium that can contain, or store a programfor use by or in connection with an instruction execution system,apparatus, or device.

A computer readable signal medium can include a propagated data signalwith computer readable program code embodied therein, for example, inbaseband or as part of a carrier wave. Such a propagated signal can takeany of a variety of forms, including, but not limited to,electro-magnetic, optical, or any suitable combination thereof. Acomputer readable signal medium can be any computer readable medium thatis not a computer readable storage medium and that can communicate,propagate, or transport a program for use by or in connection with aninstruction execution system, apparatus, or device.

Program code embodied on a computer readable medium can be transmittedusing any appropriate medium, including but not limited to wireless,wire line, optical fiber cable, radiofrequency (RF), etc., or anysuitable combination of the foregoing.

Computer program code for carrying out operations for aspects of thepresent disclosure can be written in any combination of one or moreprogramming language, including an object oriented programming language,such as Java, Smalltalk, C++ or the like and conventional proceduralprogramming language, such as the “C” programming language or similarprogramming languages. The program code can execute entirely on theuser's computer, partly on the user's computer, as a stand-alonesoftware package, partly on the user's computer and partly on a remotecomputer or entirely on the remote computer or server. In the latterscenario, the remote computer can be connected to the user's computerthrough any type of network, including a local area network (LAN) or awide area network (WAN), or the connection can be made to an externalcomputer (for example, through the Internet using an Internet ServiceProvider).

The corresponding structures, materials, acts, and equivalents of allmeans or step plus function elements in the claims below are intended toinclude any structure, material, or act for performing the function incombination with other claimed elements as specifically claimed. Thedescription of the present disclosure has been presented for purposes ofillustration and description, but is not intended to be exhaustive orlimited to the form disclosed. Many modifications and variations will beapparent to those of ordinary skill in the art without departing fromthe scope and spirit of the disclosure. The embodiments were chosen anddescribed in order to best explain the principles of the disclosure andthe practical application, and to enable others of ordinary skill in theart to understand the disclosure for various embodiments with variousmodifications as are suited to the particular use contemplated.

The diagrams depicted herein are illustrative. There can be manyvariations to the diagram or the steps (or operations) described thereinwithout departing from the spirit of the disclosure. For instance, thesteps can be performed in a differing order or steps can be added,deleted or modified. All of these variations are considered a part ofthe disclosure.

The terminology used herein can imply direct or indirect, full orpartial, temporary or permanent, action or inaction. For example, whenan element is referred to as being “on,” “connected” or “coupled” toanother element, then the element can be directly on, connected orcoupled to the other element and/or intervening elements can be present,including indirect and/or direct variants. In contrast, when an elementis referred to as being “directly connected” or “directly coupled” toanother element, there are no intervening elements present.

Although the terms first, second, etc. can be used herein to describevarious elements, components, regions, layers and/or sections, theseelements, components, regions, layers and/or sections should notnecessarily be limited by such terms. These terms are used todistinguish one element, component, region, layer or section fromanother element, component, region, layer or section. Thus, a firstelement, component, region, layer, or section discussed below could betermed a second element, component, region, layer, or section withoutdeparting from the teachings of the present disclosure.

The terminology used herein is for describing particular exampleembodiments and is not intended to be necessarily limiting of thepresent disclosure. As used herein, the singular forms “a,” “an” and“the” are intended to include the plural forms as well, unless thecontext clearly indicates otherwise. The terms “comprises,” “includes”and/or “comprising,” “including” when used in this specification,specify the presence of stated features, integers, steps, operations,elements, and/or components, but do not preclude the presence and/oraddition of one or more other features, integers, steps, operations,elements, components, and/or groups thereof.

Example embodiments of the present disclosure are described herein withreference to illustrations of idealized embodiments (and intermediatestructures) of the present disclosure. As such, variations from theshapes of the illustrations as a result, for example, of manufacturingtechniques and/or tolerances, are to be expected.

Unless otherwise defined, all terms (including technical and scientificterms) used herein have the same meaning as commonly understood by oneof ordinary skill in the art to which this disclosure belongs. Theterms, such as those defined in commonly used dictionaries, should beinterpreted as having a meaning that is consistent with their meaning inthe context of the relevant art and should not be interpreted in anidealized and/or overly formal sense unless expressly so defined herein.

Furthermore, relative terms such as “below,” “lower,” “above,” and“upper” can be used herein to describe one element's relationship toanother element as illustrated in the accompanying drawings. Suchrelative terms are intended to encompass different orientations ofillustrated technologies in addition to the orientation depicted in theaccompanying drawings. For example, if a device in the accompanyingdrawings were turned over, then the elements described as being on the“lower” side of other elements would then be oriented on “upper” sidesof the other elements. Similarly, if the device in one of the figureswere turned over, elements described as “below” or “beneath” otherelements would then be oriented “above” the other elements. Therefore,the example terms “below” and “lower” can encompass both an orientationof above and below.

As used herein, the term “about” and/or “substantially” refers to a+/−10% variation from the nominal value/term. Such variation is alwaysincluded in any given value/term provided herein, whether or not suchvariation is specifically referred thereto.

If any disclosures are incorporated herein by reference and suchdisclosures conflict in part and/or in whole with the presentdisclosure, then to the extent of conflict, and/or broader disclosure,and/or broader definition of terms, the present disclosure controls. Ifsuch disclosures conflict in part and/or in whole with one another, thento the extent of conflict, the later-dated disclosure controls.

It will be understood that those skilled in the art, both now and in thefuture, can make various improvements and enhancements which fall withinthe scope of the claims which follow.

What is claimed is:
 1. A method for reducing power consumption on amobile device comprising: obtaining, by a mobile device processor,sensor data from a sensor, wherein the sensor data is segmented into aseries of segmented sensor portions, wherein each of the series ofsegmented sensor portions represents a user behavior characteristic;modeling, by the mobile device processor, first behavior data based onthe series of segmented sensor portions; computing, by the mobile deviceprocessor, a rate of decay of confidence in the first behavior databased on the series of segmented sensor portions; selecting, by themobile device processor, a first threshold level of confidence forrequesting a behavior update from the sensor based on the series ofsegmented sensor portions; estimating, by the mobile device processor, atotal decay of confidence in the first behavior data based on the seriesof segmented sensor portions; upon estimating that the total decay ofconfidence in the first behavior data exceeds the first threshold levelof confidence, obtaining, by the mobile device processor, secondbehavior data; wherein a plurality of behavior modes for obtainingbehavior information each uses a different level of power consumption;and selecting, by the mobile device processor, a behavior mode having alowest level of power consumption to obtain the second behavior data. 2.The method of claim 1, wherein estimating, by the mobile deviceprocessor, a total decay of confidence in the first behavior data basedon the series of segmented sensor portions uses historical data.
 3. Themethod of claim 1, wherein the first behavior data and the secondbehavior data are derived from actions of an operator of the mobiledevice.
 4. The method of claim 1, wherein the sensor is located in themobile device.
 5. The method of claim 1, further comprising: setting, bythe mobile device processor, a second threshold level for requesting asecond behavior update when the total decay exceeds the second thresholdlevel.
 6. The method of claim 5, further comprising: setting, by themobile device processor, a third threshold level for requesting thirdbehavior data when the total decay exceeds the third threshold level. 7.The method of claim 1, further comprising: calculating, by the mobiledevice processor, an additional threshold level for requesting an updatewhen the total decay exceeds the additional threshold level.
 8. Themethod of claim 1, wherein selecting the behavior mode is based at leastin part on a required accuracy.
 9. A method for reducing powerconsumption on a mobile device comprising: receiving, at a modelingserver, first behavior information from a mobile device processoroperating with a monitoring module and a sensor that identifies a firstattribute of the mobile device; receiving, by the modeling server,sensor data from the mobile device processor operating with a sensor,wherein the sensor data is segmented into a series of segmented sensorportions, wherein each of the series of segmented sensor portionsrepresents a user behavior characteristic; modeling, by the modelingserver, a plurality of actions based on the received sensor data;computing, by the modeling server, a rate of decay of the firstattribute; selecting, by the modeling server, a first threshold levelbased on the modeling for requesting a behavior update from the mobiledevice processor operating with the monitoring module; estimating, bythe modeling server, a total decay from the first attribute; uponestimating that the total decay from the first behavior exceeds thefirst threshold level, requesting, by the modeling server, secondbehavior information from the mobile device processor operating with themonitoring module, wherein the request for second behavior informationincludes an instruction to the mobile device processor to use one of aplurality of behavior modes for obtaining the second behaviorinformation; and wherein each behavior mode requires a different levelof power consumption to obtain the second behavior information.
 10. Themethod of claim 9, wherein the plurality of behavior modes comprises auser behavior mode.
 11. The method of claim 10, wherein the userbehavior mode is adjusted based on historical data.
 12. The method ofclaim 11, wherein the historical data comprises location data.
 13. Themethod of claim 9, further comprising: setting, by the mobile device, asecond threshold level for requesting a second behavior update from themonitoring module when the total decay exceeds the second thresholdlevel.
 14. The method of claim 13, further comprising: setting, by themobile device, a third threshold level for requesting a third behaviorupdate from the monitoring module when the total decay exceeds the thirdthreshold level.
 15. The method of claim 9, further comprising:calculating, by the mobile device processor, an additional thresholdlevel for requesting a behavior update from a behavior sensor when thetotal decay exceeds the additional threshold level.
 16. The method ofclaim 9, wherein selecting the behavior mode is based at least in parton power requirements.
 17. A mobile device comprising: a memory; and aprocessor used for reducing power consumption on the mobile deviceconfigured to: obtain information from the mobile device processor thatidentifies a first attribute of the mobile device; obtain sensor datafrom a sensor in the mobile device, wherein the sensor data is segmentedinto a series of segmented sensor portions, wherein each of the seriesof segmented sensor portions represents a user behavior characteristic;model a behavior based on the obtained sensor data; compute a rate ofdecay of the first attribute; select a first threshold level, forrequesting an update from the mobile device processor; estimate a totaldecay from the first attribute; upon estimating that the total decayfrom the first attribute exceeds the first threshold level, obtain asecond attribute from the mobile device processor, wherein the mobiledevice processor controls a plurality of modes for obtaining informationand each mode uses a different level of power consumption to obtain theinformation; and select a mode with a lowest level of power consumptionto obtain the second attribute.
 18. The mobile device of claim 17,wherein at least one of the plurality of modes comprises alocation-based mode.
 19. The mobile device of claim 17, wherein at leastone of the plurality of modes uses a user's calendar.
 20. The mobiledevice of claim 17, wherein the processor is further configured to: seta second threshold level for requesting a second update from the mobiledevice processor when the total decay exceeds the second thresholdlevel.